﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Dynamic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace TS2015
{
    public class ChartData
    {
        public string Name { get; set; }
        public object[] Data { get; set; }
        public int Total { get; set; }
    }

    public class Data
    {
        public int Year { get; set; }
        public int Month { get; set; }
        public int Day { get; set; }
        public int Total { get; set; }
    }

    public class Result
    {
        public IEnumerable<Data> DuLieu { get; set; }
        public int NhomTheo { get; set; }
    }

    public class ResultTK
    {
        public int MaMon { get; set; }
        public string TenMon { get; set; }

        [Display(Name = "Mã thí sinh")]
        public string MaTS { get; set; }

        [Display(Name = "Ngày sinh")]
        [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
        public DateTime NgaySinh { get; set; }

        [Display(Name = "Họ đệm")]
        public string HoDem { get; set; }

        [Display(Name = "Dân tộc")]
        public int MaDanToc { get; set; }
        public string TenDanToc { get; set; }

        [Display(Name = "Tên")]
        public string Ten { get; set; }

        [Display(Name = "Họ tên")]
        public string FullName { get; set; }
        [Display(Name = "Số báo danh")]
        public string SBD { get; set; }
        public GioiTinh GioiTinh { get; set; }

        [Display(Name = "Số điện thoại")]
        public string SoDienThoai { get; set; }

        [Display(Name = "Trường THPT")]
        public int IDTruong { get; set; }
        public string MaTruong { get; set; }

        public string TenTruong { get; set; }

        [Display(Name = "Tỉnh - Trường")]
        public string MaTinhTruong { get; set; }

        public string TenTinhTruong { get; set; }

        [Display(Name = "Tỉnh")]
        public string MaTinh { get; set; }

        public string TenTinh { get; set; }

        [Display(Name = "Email")]
        //[DataType(DataType.EmailAddress, ErrorMessage=" ")]
        [EmailAddress(ErrorMessage = " ")]
        public string Email { get; set; }

        public string NamTotNghiep { get; set; }

        [Display(Name = "Huyện")]
        public string MaHuyen { get; set; }

        public string TenHuyen { get; set; }

        
        [Display(Name = "Trường ĐH")]
        public string MaTruongDH { get; set; }
        //public string MaMaTruong { get; set; }
        public string TenTruongDH { get; set; }

        [Display(Name = "Khối thi")]
        public string TenKhoiThi { get; set; }
        public string MaKhoiThi { get; set; }

        [Display(Name = "Đối tượng ưu tiên")]
        public int MaDoiTuong { get; set; }
        public string TenDoiTuong  { get; set; }

        public string CMND { get; set; }

        [Display(Name = "Hệ đào tạo")]
        public string TenHeDaoTao { get; set; }
        public int MaHeDaoTao { get; set; }

        [Display(Name = "Bậc đào tạo")]
        public string TenBacDaoTao { get; set; }
        public int MaBacDaoTao { get; set; }

        public string MaChuyenNganh { get; set; }
        [Display(Name = "Chuyên ngành")]
        public string TenChuyenNganh { get; set; }
        public string MaNganh { get; set; }
        [Display(Name = "Ngành")]
        public string TenNganh { get; set; }

        [Display(Name = "Đăng ký")]
        public HinhThucDK HinhThucDK { get; set; }


        [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
        [Display(Name = "Ngày đăng ký")]
        public DateTime NgayDangKy { get; set; }

        [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
        [Display(Name = "Ngày đóng tiền")]
        public DateTime? NgayDongTien { get; set; }

        [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
        [Display(Name = "Ngày hoàn thành")]
        public DateTime? NgayHoanThanhDK { get; set; }

        //[Range(0,10)]
        [Display(Name = "Điểm lớp 10")]
        public double? DiemLop10 { get; set; }

        [Display(Name = "Địa chỉ")]
        //[StringLength(50)]
        public string DiaChi { get; set; }
        //[Range(0, 10)]
        [Display(Name = "Điểm lớp 11")]
        public double? DiemLop11 { get; set; }


        [Display(Name = "Điểm TBTHPT")]
        public double? DiemTBTHPT { get; set; }

        //[Range(0, 10)]
        [Display(Name = "Điểm lớp 12")]
        public double? DiemLop12 { get; set; }

        public int? TinhTrangTotNghiep { get; set; }

        [Display(Name = "Điểm TBTN")]
        public double? DiemTBTN { get; set; }

        [Display(Name = "Đóng tiền")]
        public bool TrangThaiDongTien { get; set; }
         [Display(Name = "Điểm tốt nghiệp")]
        public string DiemTN { get; set; }
    
    }

    public class DynamicData
    {
        public string ID { get; set; }
        public string Name { get; set; }        
        public int Total { get; set; }
    }

    public static class DateTimeJavaScript
    {
        private static readonly long DatetimeMinTimeTicks =
           (new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).Ticks;

        public static long ToJavaScriptMilliseconds(this DateTime dt)
        {
            return (long)((dt.ToUniversalTime().Ticks - DatetimeMinTimeTicks) / 10000);
        }
    }
}